package com.citycloud.ccuap.tc.admin.permission;

import java.util.Collection;
import java.util.List;

/**
 * Created by rabbitQ on 2018/8/21.
 * 功能权限相关接口
 */
public interface IFuncPermissionService {


    /**
     * 判断用户是否有功能列表里的至少一个
     */
    boolean hasFunctionPermissions(String userId, String projectId, List<String> permissions);

    /**
     * 判断用户是否有功能列表里所有功能的权限，内部直接调用isPermittedAll接口
     */
    boolean hasAllFunctionPermissions(String userId, String projectId, List<String> permissions);

    /**
     * 判断当前用户是否有指定单个权限,传参当前用户Id,项目编号,功能码
     */
    boolean isPermitted(String userId, String projectId, String permission);

    /**
     * 判断当前用户是否有指定全部权限,传参当前用户Id,项目编号,功能码集合
     */
    boolean isPermittedAll(String userId, String projectId, Collection<String> permissions);
}
